+2004-06-04 Matthias Clasen <mclasen@redhat.com>
+
+ * docs/widget_geometry.txt: Add a note about the !CAN_FOCUS
+ quirk in the button size allocation code.
+
+ * gtk/gtkbutton.c (gtk_button_size_allocate): Give the space
+ requested for drawing the focus indicator to the child in the
+ !CAN_FOCUS case. This should fix issues which the Gimp has with
+ the button allocation changes in 2.4.2.
+
Thu Jun 3 21:17:29 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentry.c (gtk_entry_completion_timeout): Calculate the
+2004-06-04 Matthias Clasen <mclasen@redhat.com>
+
+ * docs/widget_geometry.txt: Add a note about the !CAN_FOCUS
+ quirk in the button size allocation code.
+
+ * gtk/gtkbutton.c (gtk_button_size_allocate): Give the space
+ requested for drawing the focus indicator to the child in the
+ !CAN_FOCUS case. This should fix issues which the Gimp has with
+ the button allocation changes in 2.4.2.
+
Thu Jun 3 21:17:29 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentry.c (gtk_entry_completion_timeout): Calculate the
+2004-06-04 Matthias Clasen <mclasen@redhat.com>
+
+ * docs/widget_geometry.txt: Add a note about the !CAN_FOCUS
+ quirk in the button size allocation code.
+
+ * gtk/gtkbutton.c (gtk_button_size_allocate): Give the space
+ requested for drawing the focus indicator to the child in the
+ !CAN_FOCUS case. This should fix issues which the Gimp has with
+ the button allocation changes in 2.4.2.
+
Thu Jun 3 21:17:29 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentry.c (gtk_entry_completion_timeout): Calculate the
+2004-06-04 Matthias Clasen <mclasen@redhat.com>
+
+ * docs/widget_geometry.txt: Add a note about the !CAN_FOCUS
+ quirk in the button size allocation code.
+
+ * gtk/gtkbutton.c (gtk_button_size_allocate): Give the space
+ requested for drawing the focus indicator to the child in the
+ !CAN_FOCUS case. This should fix issues which the Gimp has with
+ the button allocation changes in 2.4.2.
+
Thu Jun 3 21:17:29 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentry.c (gtk_entry_completion_timeout): Calculate the
=====================
+NOTE: Due to a bug that is basically unfixable in a sufficiently compatible
+NOTE: way, the button gives the space requested for focus_width and
+NOTE: focus_padding to the child (in addition to the space requested by
+NOTE: the child), if the button is !CAN_FOCUS.
+
Style properties
GtkWidget::interior_focus = TRUE
child_allocation.height = MAX (1, child_allocation.height - default_border.top - default_border.bottom);
}
- child_allocation.x += focus_width + focus_pad;
- child_allocation.y += focus_width + focus_pad;
- child_allocation.width = MAX (1, child_allocation.width - (focus_width + focus_pad) * 2);
- child_allocation.height = MAX (1, child_allocation.height - (focus_width + focus_pad) * 2);
+ if (GTK_WIDGET_CAN_FOCUS (button))
+ {
+ child_allocation.x += focus_width + focus_pad;
+ child_allocation.y += focus_width + focus_pad;
+ child_allocation.width = MAX (1, child_allocation.width - (focus_width + focus_pad) * 2);
+ child_allocation.height = MAX (1, child_allocation.height - (focus_width + focus_pad) * 2);
+ }
if (button->depressed)
{